
var username = tool.getCookie('username')
// console.log(username)
// 判断是否登录
if(!username){
    layer.msg('请先登录',{
        icon:2,
        time:1500
    },function(){
        localStorage.setItem('url',location.href)
        location.href = "../html/login.html"
    })
}else{
    $('.logininfo').html(`
        <a>欢迎<span style="font-size:20px;color:white;"> ${username}</span> 的到来！<a>
        <a><span class="logout">退出</span></a>
    `)
    // 退出
    $('.logout').click(function(){
        tool.removeCookie('username')
        $('.logininfo').html(`
            <a href="../html/login.html">登录</a>
            <a href="../html/register.html">注册</a>
            <a href="">消息通知</a>
        `)
    })
}


/*  获取本地存储中数据 */
var data = localStorage.getItem('data')
/* 判断是否获取到数据 */
if(!data){
    $('.cart').html(`
        <div class="jumbotron container cart">
        <h1>购物车空空如也!</h1>
        <p>赶快去列表页挑选商品吧！</p>
        <p><a class="btn btn-primary btn-lg" href="../html/listno.html" role="button">列表页</a></p>
        </div>
    `)
    
}else{    
    var data = localStorage.getItem('data')
    var arr = JSON.parse(data).filter(item=>item.username === username)
    console.log(arr);
    if(arr.length){
        // 加载数据
        // 发送ajax获取所有商品信息
        // 组合ids
        var ids = arr.map(item=>item.goodsid).join()
        // console.log(ids);
        var loadindex = layer.load(1,{
            shade:[1,"#000"]
        })
        $.get('../php/cart.php',{ids},res=>{
            console.log(res);
            var {meta:{status,msg},data} = res;
            var str = '';
            data.forEach(item=>{
                var number = arr.find(v=>v.goodsid === item.id).number
                str += `
                    <tr>
                        <td><input checked type="checkbox" name="selectone"></td>
                        <td>
                            <a href="../html/detail.html?id=${item.id}">
                                <img width="80" height="80" src="${item.imgpath.split('==========')[0]}">
                            </a>
                        </td>
                        <td class="price">￥<span>${item.price}</span>元</td>
                        <td class="number">
                            <button class="reduce">-</button>
                            <input size="3" type="number" value="${number}">
                            <button class="add">+</button>
                        </td>
                        <td class="subtotal">￥<span>${item.price * number}</span>元</td>
                        <td data-id="${item.id}">
                            <a href="javascript:;" class="btn removecart btn-danger">删除购物车</a>
                        </td>
                    </tr>
                `
            })
            $('.ca-box .cart tbody').html(str)
            layer.close(loadindex)
            // 购物车功能
            // 全选功能
            selectAll()
            // 单选功能
            selectOne()
            // 数量加
            numberAdd()
            // 数量减
            numberReduce()
            // 计算小计的功能
            subtotal()
            // 总数量和总价格
            total()
            // 删除购物车功能
            removeCart()
        },'json')
    }
    
        // 提示用户挑选商品
        // $('.cart').html(`
        //     <div class="jumbotron">
        //     <h1>购物车空空如也!</h1>
        //     <p>赶快去列表页挑选商品吧！</p>
        //     <p><a class="btn btn-primary btn-lg" href="../html/listno.html" role="button">列表页</a></p>
        //     </div>
        // `)
    }

// 删除购物车功能
function removeCart(){
    $('.removecart').click(function(){
        layer.confirm('你确定要删除吗？', {
            btn: ['确认','取消'] //按钮
          }, ()=>{
            $(this).parent().parent().remove()
            total()
            // 删除本地存储中的数据
            var data = localStorage.getItem('data')
            data = JSON.parse(data)
            var id = $(this).parent().attr('data-id')
            var index = data.findIndex(item=>item.goodsid === id && username === item.username)
            data.splice(index,1)
            localStorage.setItem('data',JSON.stringify(data))
                layer.msg('删除成功', {
                    time: 1500, //20s后自动关闭
                    icon:1
                });
          }, function(){
            layer.msg('取消成功', {
              time: 1500, //20s后自动关闭
              icon:1
            });
          });
        
    })
}
// 总数量和总价格
function total(){
    var totalPrice = 0;
    var totalNum = 0;
    $('[name="selectone"]:checked').each(function(i,v){
        totalPrice += ($(this).parent().siblings('.subtotal').find('span').text()-0)
        totalNum += ($(this).parent().siblings('.number').find('input').val()-0)
    })
    $('.totalNum').text(totalNum)
    $('.totalPrice').text(totalPrice)
}
// 计算小计的功能
function subtotal(){
    $('.cart .number input').each(function(i,v){
        var sub = v.value * $(v).parent().prev().find('span').text()
        $(v).parent().next().find('span').text(sub)
    })
}
// 数量减的功能
function numberReduce(){
    $('.cart .number button.reduce').click(function(){
        var number = +$(this).next().val()
        number--
        $(this).next().val(number)
        // 修改本地存储中的数据
        var data = localStorage.getItem('data')
        data = JSON.parse(data)
        var id = $(this).parent().siblings().last().attr('data-id')
        var obj = data.find(item=>item.goodsid === id && item.username === username)
        obj.number--;
        localStorage.setItem('data',JSON.stringify(data))
        subtotal()
        total()
    })
}
// 数量加功能
function numberAdd(){
    $('.cart .number button.add').click(function(){
        var number = +$(this).prev().val()
        number++
        $(this).prev().val(number)
        // 修改本地存储中的数据
        var data = localStorage.getItem('data')
        data = JSON.parse(data)
        var id = $(this).parent().siblings().last().attr('data-id')
        var obj = data.find(item=>item.goodsid === id && item.username === username)
        obj.number++;
        localStorage.setItem('data',JSON.stringify(data))
        subtotal()
        total()
    })
}
// 单选功能
function selectOne(){
    $('[name="selectone"]').click(function(){
        var arr = Array.prototype.slice.call($('[name="selectone"]'))
        var bool = arr.every(item=>item.checked)
        $('[name="selectAll"]').prop('checked',bool)
        total()
    })
}
// 全选功能
function selectAll(){
    $('[name="selectAll"]').click(function(){
        $('[name="selectone"]').prop('checked',$(this).prop('checked'))
        $('[name="selectAll"]').prop('checked',$(this).prop('checked'))
        total()
    })
}














